from functions import *

# 注意，本程序经过改写后，需要分析的数据文件必须以.dat结尾！！！
# t-时间序列，y-信号序列，f-频率序列，A-幅值序列
folder = "Data"     # 指定需要分析的数据的文件夹
files = get_all_data_files(folder)   # 获得文件夹中所有的数据文件
for file in files:
    t_y = get_data(file)    # 读取文件中的数据
    """
    以下代码用于处理数据，可以根据需要选择调整顺序，也可以注释掉不需要的部分
    """
    draw_y(t_y, file, 't_y')    # 绘制时间-信号的波形图（时域图）
    t_y_nr = noise_reduce(t_y, N=3, Wn=0.01, output='ba')  # 降噪分析
    draw_y(t_y_nr, file, 'noise_reduce')   # 绘制降噪后的时域图
    meas_freq = get_frequency(file)    # 获得测量的频率
    f_A = get_f_A(t_y)                  # 获得频域图的数据
    draw_figures(t_y, f_A, meas_freq, file, "time_domain_and_frequency_domain") # 绘制频域图和时域图
    write_data(t_y, f'{file}_t_y.txt')    # 将t-y数据写入文件
    write_data(f_A, f'{file}_f_A.txt')     # 将f-A数据写入文件
    filtered_t_y, filtered_f_A = filter_freq(t_y, freq_list=[0, 50], band_width=2)  # 滤波分析
    draw_figures(filtered_t_y, filtered_f_A, meas_freq, file, file_name_mark='filtered') # 绘制滤波后的频域图和时域图